package com.zq.solution.string;

import java.util.Arrays;
import java.util.List;

/**
 * @ClassName CommonChars
 * @Description 查找常用字符
 * 给定仅有小写字母组成的字符串数组 A，返回列表中的每个字符串中都显示的全部字符（包括重复字符）组成的列表。
 * 例如，如果一个字符在每个字符串中出现 3 次，但不是 4 次，则需要在最终答案中包含该字符 3 次。
 * 你可以按任意顺序返回答案。
 * 示例 ：
 *  输入：["bella","label","roller"]
 *  输出：["e","l","l"]
 * @Author ZQ
 * @Date 2020/10/14 15:22
 * @Version 1.0
 */
public class CommonChars {
    public static List<String> commonChars(String[] A) {
        if (A == null || A.length == 0) return null;
        if (A.length == 1) return Arrays.asList(A);
        String ansStr = "";
        for (int i = 0; i < A.length - 1; i++){
            for (String s : A[i].split("")){
                if (A[i + 1].contains(s)){
                    ansStr += s;
                }
            }
            if (ansStr.equals("")) break;
            A[i + 1] = ansStr;
            ansStr = "";
        }

        return Arrays.asList(A[A.length -1].split(""));
    }

    public static void main(String[] args) {
        String[] A = new String[]{"cool","lock","cook"};
        String[] A1 = new String[]{"bella","label","roller"};
        System.out.println(commonChars(A));
        System.out.println(commonChars(A1));
        //System.out.println("commonchars(A)".indexOf('c'));
    }
}
